/**
 * @file t_platform.h
 * @brief 平台相关头文件
 */
#ifndef _ML307R_HW_USART_H
#define _ML307R_HW_USART_H

#include "stm32f4xx.h"  // Device header
/*c_lib*/
#include "stdint.h"
#include "stdio.h"
#include "stdlib.h"
#include "string.h"

#ifdef __cplusplus
extern "C" {
#endif

extern UART_HandleTypeDef ml_huart4;

#define ml_BUFFER_SIZE (512)
extern volatile uint16_t ml_rx4_len;         // 接收一帧数据的长度
extern volatile uint8_t ml_recv4_end_flag;  // 一帧数据接收完成标志
extern uint8_t ml_rx4_buffer[ml_BUFFER_SIZE];  // 接收数据缓存数组
void ml_t_at_hw_usart_init(void);
void ml_bsp_uart4_init(void);
void ML_HAL_UART4_MspInit(UART_HandleTypeDef* uartHandle);
#ifdef __cplusplus
}
#endif

#endif /* _ML307R_HW_USART_H */